//
//  Battle.h
//  PacIsBack
//
//  Created by Simon André on 28/01/10.
//  Copyright 2010 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "BattleProtocol.h"
#import "PlayerTeam.h"
#import "PlayerProtocol.h"
#import "EnnemyTeam.h"
#import "BattleViewController.h"
@class Game;

@interface Battle : NSObject <BattleProtocol> {
	Game* game;
	id<BattleTeamProtocol> playerTeam;
	id<PlayerProtocol> player;
	id<BattleTeamProtocol> ennemyTeam;
	id<AreaTypeProtocol> areaType;
	id<CharacterProtocol> selectedCharacter;
	id<AbilityProtocol> selectedAbility;
	NSMutableArray* charactersThatAlreadyActed;
	NSMutableArray* characterActionOrder;
	BattleViewController* controller;
}

@property(nonatomic,retain) Game* game;
@property(nonatomic,retain) id<BattleTeamProtocol> playerTeam;
@property(nonatomic,retain) id<PlayerProtocol> player;
@property(nonatomic,retain) id<BattleTeamProtocol> ennemyTeam;
@property(nonatomic,retain) id<AreaTypeProtocol> areaType;
@property(nonatomic,retain) id<CharacterProtocol> selectedCharacter;
@property(nonatomic,retain) id<AbilityProtocol> selectedAbility;
@property(nonatomic,retain) BattleViewController* controller;
@property(nonatomic,retain) NSMutableArray* charactersThatAlreadyActed;
@property(nonatomic,retain) NSMutableArray* characterActionOrder;

-(id) initBattleWithPlayer:(id<PlayerProtocol>) thePlayer forGame:(Game*) game;

@end
